import type { AxiosRequestConfig, CreateAxiosDefaults } from 'axios';

export interface ResponseType<T> {
    // 具体业务报错， code 为 0 表示没有问题，其它值表示有错误信息，用于具体的服务器返回错误信息展示， 此时 httpcode 为 200
    code: number;
    data: T;
    total: number;
    message: string;
    token: string;
    /*
     * errCode?: number;
     * errMsg?: string;
     * vals?: ;
     * error: { message: string };
     */
}

export interface CreateAxiosConfig extends CreateAxiosDefaults<any> {
    baseURL?: string;
    headers?: Record<string, string>;
}

export interface RequestConfigType extends AxiosRequestConfig {
    // default: true 自动提示错误信息 通过 body 内的 code
    showError?: boolean;
}
